home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / wordproc / vde172b.arj / VDE.REF < prev    next >
Text File  |  1994-04-01  |  82KB  |  1,278 lines

  1.  
  2.                                    VDE.REF
  3.                                    -------
  4.                      Reference Manual for the VDE Editor:
  5.                          version 1.72B (31 Mar 1994)
  6.  
  7.                              (c)1987-94, E. Meyer
  8.  
  9.  
  10.  
  11. ================================  CONTENTS  ==================================
  12.  
  13.     (For QUICK START, SYNTAX, GENERAL INFORMATION etc. see the file VDE.DOC)
  14.  
  15.      6.  COMMAND REFERENCE, alphabetically by topic:
  16.             Auto format, Auto indent, Auto number, Auto save, Block commands, 
  17.          Cursor position, Data files, Deleting, Envelopes, Files, 
  18.          Find/replace, Foreign characters, Graphics, Header, Hyphenation, 
  19.          Information, Inserting, Justification, Line spacing, Margins, 
  20.          Matching files, MenuBars, Multiple files, Pagination, Paragraph 
  21.          indent, Place markers, Print preview, Print styles/codes, Printer 
  22.          drivers, Printing, Proportional spacing, Protected mode, Reformat, 
  23.          Ruler line, Run command/shell, Save/exit, Screen controls, Screen 
  24.          size, Spelling check, Splitting files, Tabs, Time/date, Undelete, 
  25.          Upper/lower case, Windows.
  26.  
  27.      7. MACROS.  Explanation and examples of:
  28.             Autoexec macro, Function keys, Function key labels, Key definition 
  29.          files, Macro definition and use, Macro pause/input, Macro program- 
  30.          ming, Toggle control, Recording macros.
  31.  
  32.      8. REVIEWS / ABOUT THE AUTHOR.
  33.  
  34.     (For use of the VINST installation utility, see the file VINST.REF.)
  35.  
  36.  
  37. ==========================  6. COMMAND REFERENCE  ============================
  38.  
  39.  
  40. AUTO FORMAT (^OM) -  Continuously keeps the paragraph of text you are working 
  41.     on properly formatted (margins and spacing), even as you add to or delete 
  42.     from the line; format changes are implemented instantly.  (Auto format 
  43.     does NOT affect parts of the file you have not changed.)  When off, the 
  44.     manual ^B command can still be used (see REFORMAT).
  45.          Care must be taken in files with mixed formats, as the CURRENT 
  46.     settings of margins and spacing are always used.
  47.          Note that with Auto Format on, certain keystrokes may have additional 
  48.     (or no) effects, due to immediate reformatting afterward; and some 
  49.     operations like Find/Replace may be somewhat slower.
  50.  
  51. AUTO INDENT (^OA) -  Causes wordwrap or the [Enter] key, upon moving to the 
  52.     next line, to indent to match any existing indentation on that line (with 
  53.     insert OFF) or the previous line (with insert ON).  Thus any structured 
  54.     indentation you create is maintained.  Useful as a temporary (paragraph) 
  55.     indent, or for outlines, program source code, etc.  Works in all modes, 
  56.     including nondocument.  Note: Indentation must be done with spaces or 
  57.     variable tabs, NOT with hard tabs.
  58.  
  59. AUTO NUMBER (^K#) -  VDE can automatically number items in a list.  Just type 
  60.     a "#" character where each number should go:
  61.              #.  First item.
  62.              #.  Second item...
  63.     You can then mark the list off as a block, and use the ^K# command; VDE 
  64.     will insert the numbers (1, 2, etc) in place of the "#" markers.  You will 
  65.     be asked for the starting number; the default is 1.  If auto format (^OM) 
  66.     is on, text will be realigned to compensate for varying length numbers.  
  67.     (Once numbering is done, the markers are gone.  For frequently revised 
  68.     lists, leave the "#" markers in the file on disk; use ^K# just before 
  69.     printing, and do not save afterward.)
  70.  
  71. AUTO SAVE (^KA) -  Saves any changes you have made to disk automatically, at 
  72.     regular intervals.  This ensures that you don't lose too much work if you 
  73.     make a mistake, have a power outage, etc.  ^KA lets you set the interval 
  74.     (1 to 255 minutes), or turn this feature off entirely (0).  Just press 
  75.     [Enter] to restore your default, normally 0 [set with VINST].
  76.          When auto save is on, changes you've made to any file may be saved to 
  77.     disk at any moment.  If you don't want this to occur for a particular 
  78.     file, engage protected mode (^KO).
  79.          Notes: Auto save will wait for an interval when the keyboard is not 
  80.     in use.  It cannot save "untitled" work.  It will make a backup file only 
  81.     if the file had not been saved previously.
  82.  
  83. BLOCK COMMANDS (^KB,^KK,^KH,^KZ,^KY,^KC,^KV,^KW; ^QB,^QK; ^KPB) -  A block of 
  84.     text is delimited by two markers, set by ^KB (beginning) and ^KK (end), 
  85.     which remain in place until reset elsewhere or deleted.  Alternatively, 
  86.     "shift-blocking" can mark a block by moving the cursor to one end, holding 
  87.     down the Shift key, and using [^,v,<,>], Home, End], or [PgUp,Dn] to move 
  88.     the cursor to the other end, releasing the Shift key when finished.  Once 
  89.     marked, the block text displays in a contrasting color.  ^KH unmarks the 
  90.     block, removing any marker(s) set.
  91.          The block move and print commands (^KV,^KPB) require a block to be 
  92.     fully marked before use.  To save keystrokes, the other block commands 
  93.     (see also ^K#,^K",AltC), if used when only one block marker is present, 
  94.     will mark the current cursor position as the other end of the block:
  95.          ^KY goes to and deletes the block.  (^QP may be used to return the 
  96.     cursor to its position before the deletion.)
  97.          ^KV moves the marked block to the present cursor location; ^KC copies 
  98.     it there, leaving the original marked.  (^QP may be used to return to the 
  99.     former position of a moved block.)
  100.          ^KZ "zooms into" a block: the rest of the text is inaccessible, and 
  101.     the block is temporarily treated as the entire file.  This isolates one 
  102.     portion of a file for your attention, and also limits the scope of VDE 
  103.     commands like find/replace to that portion (only "save" commands like ^KS 
  104.     continue to affect the entire file).  Use ^KZ again to zoom back out.  In 
  105.     zoom mode, pagination is off; you can use block operations, though any 
  106.     block markers within will disappear when you zoom back to the whole file.
  107.          ^KW writes the block text to a disk file; you will be asked for the 
  108.     filename (and optional mode).  You can also choose to append the text to 
  109.     an existing file by typing a "+" before the filename, as in:
  110.                       Write to file: +GORT
  111.     (If you don't specify "+", and the file already exists, VDE will ask 
  112.     whether you want to overwrite or append; press [Esc] or [Space] to 
  113.     cancel.)
  114.          ^QB moves the cursor to the block start (if marked); ^QK moves to the 
  115.     block end.
  116.          ^KPB (^KP with B option) prints the block text only.  (See PRINTING.)
  117.  
  118. CURSOR POSITION (Arrows; ^F,A,C,R; ^QE,X,S,D; ^QR,C; ^QI,L,N,P; AltO) -  VDE 
  119.     supports two sets of arrow keys: the four arrow keys [^,v,<,>] on the PC 
  120.     keyboard, and the WordStar "diamond" ^E,^X,^S,^D.  These move the cursor 
  121.     one unit up, down, left, and right respectively.  On repeated use, the PC 
  122.     arrows [^,v] attempt to restore the original column after moving across a 
  123.     shorter line; ^E,^X do not.
  124.          ^F or ^[>] moves right, to the start of the next word; ^A or ^[<] 
  125.     moves left, to the start of the current, then the previous, word.  ^C or 
  126.     [PgDn] scrolls forward (down) one screen; ^R or [PgUp] scrolls backward 
  127.     (up) one screen.
  128.          Preceded by ^Q, any arrow key moves more Quickly: thus ^QE, ^QX go 
  129.     to the top or bottom of the screen; ^QS, ^QD to the left or right end of 
  130.     the line.  Similarly, ^QR and ^QC jump to the beginning or end of the 
  131.     file.
  132.          ^QI moves directly to a given page (for documents) or line (for non- 
  133.     documents).  In documents, ^QL and ^QN move to the start of the Last or 
  134.     Next page, respectively.
  135.          ^QP returns the cursor to its Previous position -- before the last 
  136.     large movement occurred.  (This means AltM,AltO,^B,^QR,^QC,^QF,^QM, or any 
  137.     block command that moves to the block.)  After a block move (^KV), ^QP 
  138.     will return to the previous position of the block.  ^QP can be repeated to 
  139.     cycle between two positions in a file.
  140.          AltO displays an Overview ("scroll") bar at the top of the screen.  
  141.     The length of the bar corresponds to the filesize.  You can move the 
  142.     cursor left or right with the arrow keys; a marker remains indicating the 
  143.     original (current) position.  To move to the selected position, press 
  144.     [Enter]; press [Esc] instead to cancel.
  145.  
  146. DATA FILES (AltU) -  AltU allows you to change many VDE settings by using 
  147.     (loading or saving) specific types of data files.
  148.          .VDF files can be Loaded and Saved - see KEY DEFINITION FILES.
  149.          .VDG files can be Saved - see GRAPHICS (CHARACTERS).
  150.          .VDP,C,I files can be Loaded - see PRINTER DRIVERS, CHARACTER WIDTHS,
  151.                                         USER OPTIONS.
  152.     Any of these may also be loaded with a semicolon on the command line (see 
  153.     SYNTAX).  If no directory is specified, files must be in the current or 
  154.     VDE directory (see DIRECTORIES).
  155.          Note: .VDG files can be loaded, and .VDP,C,I files saved, by VINST.  
  156.     In the event that VDE cannot load a data file created by an earlier 
  157.     version, VINST can usually convert it by reading the old file and writing 
  158.     it back to disk in the new format.
  159.  
  160. DELETING (^G,[BkSp],[Del],^T,^[BkSp],^[Del],^Y; ^QY,^Q[Del],^QT) -  ^G deletes 
  161.     the character at the cursor.  By default, [Del] does the same, while 
  162.     [BkSp] deletes the one to the left.  [But instead, [BkSp] may move 
  163.     nondestructively, and [Del] may delete at the cursor.]
  164.          ^[Del] deletes the entire current word.  ^T deletes a word to the 
  165.     right (everything from the cursor to the next word break).  ^[BkSp] 
  166.     deletes a word to the left.
  167.          ^Y deletes the entire current line.  ^QY deletes just the part of the 
  168.     line to the right of the cursor; ^Q[Del] deletes the part to the left.
  169.          ^QT, followed by a character, deletes everything up until the next 
  170.     occurrence of that character.  EXAMPLE: ^QT. (period) deletes to the end 
  171.     of the sentence.  Special cases: ^QT[Enter] deletes to the next HARD CR, 
  172.     the end of the paragraph; ^QT^Z deletes to the end of the file.
  173.          Unintended deletions can be recovered (see UNDELETING).
  174.  
  175. ENVELOPES (^KPA) -  VDE provides an easy way to print a single envelope to 
  176.     accompany a letter, via the "A"ddress option of the print command:
  177.        1.  Begin by moving the cursor to the address of the recipient, and 
  178.     marking this as a block (see BLOCK COMMANDS):
  179.                      {Chester Fludd
  180.                       193 Lakota St         "{}" = block markers
  181.                       Norman, OK  73069}
  182.        2.  Then use the print command (^KP), and at the options prompt, type 
  183.     "A", followed by "1" or "2" to specify the envelope size: 1 for smaller 
  184.     (letter) size envelopes, about 3.625 x 6.5"; 2 for larger (business) size, 
  185.     4.25 x 9.5".
  186.        3.  Optionally, you may include a return address for the upper left 
  187.     corner of the envelope: enter this in "double quotes", using a backslash 
  188.     (\) to mark the beginning of a new line.  Example:
  189.                   Options:  A2"C. Fludd\193 Lakota St\Norman, OK 73069"
  190.     (You may find it convenient to set up envelope printing with your usual 
  191.     return address as a FUNCTION KEY, if you will use it often.)
  192.        4.  Load the envelope correctly in your printer, and press [Enter] to 
  193.     print it.  Then you can continue to edit or print the letter itself.
  194.  
  195.          NOTES: Printers handle envelope feeding in various ways.  With some 
  196.     you can feed in a single envelope, and manually position it on the platen; 
  197.     with some others, a separate tray is available for envelopes, and you will 
  198.     need to install special codes to select the proper tray.  Many laser 
  199.     printers expect to feed envelopes lengthwise, so you will need codes to 
  200.     print in a landscape font.  [To install control codes to prepare your 
  201.     printer for an envelope, see PRINTER INSTALLATION.]
  202.          Vertical positioning of text on the envelope can easily be changed by 
  203.     adding linefeeds to the initialization string.  Horizontal positioning can 
  204.     be changed with the "L" print option.  Because of the way laser printers 
  205.     operate in landscape mode, VDE prints both envelope sizes with their RIGHT 
  206.     edge in the same place.  This means that on other printers, the LEFT edge 
  207.     of the smaller envelope must be placed 3" (30 columns) in from the left 
  208.     margin.  If this is inconvenient, it can be overridden by specifying the 
  209.     left margin option (e.g. "L0") AFTER the "A1" option.
  210.  
  211. FILES (^KL,^KR,^KJ,^KF) -  ^KL Loads new file(s) to edit, REPLACING the 
  212.     current one.  (If the file has been modified, you will be prompted to 
  213.     confirm that you mean to abandon it.  To save the file first, use ^KD 
  214.     instead; to load file(s) in ADDITION to the current one, use AltL 
  215.     instead.)  You can enter any number of filenames, with optional line/page 
  216.     numbers and modes (see SYNTAX).
  217.          ^KR Reads in the contents of a single disk file, inserting the text 
  218.     at the current cursor position.
  219.          ^KJ deletes any disk file you specify.  (If you need more complex 
  220.     file utilities, remember that you can run any DOS command with AltR.)
  221.  
  222.          All these commands prompt for specific filenames.  If you are unsure, 
  223.     and want to pick a name from a directory listing, you can call up the 
  224.     "file browser" display by pressing [Enter] alone for *.*, or typing any 
  225.     filename with wildcards, like *.LTR.  (Note: if you mean to load an 
  226.     "untitled" work area, press ^[Enter] (or ^J), instead of [Enter], at the 
  227.     ^KL prompt.  See PROMPTS for other control key usage.)
  228.          Files display alphabetically in uppercase, then directories in 
  229.     lowercase (beginning with the parent directory "..").  If there are more 
  230.     items than will fit on screen, you will see "..." at the top or bottom to 
  231.     indicate this.  Hidden or System files will not display and cannot be 
  232.     edited with VDE.  [Note: VINST can also specify several filetypes (like 
  233.     unreadable .COM or .EXE files) to exclude; they will not display unless 
  234.     specified explicitly, and cannot be edited.]
  235.          You can move the cursor through the list with the arrow keys, 
  236.     [PgUp,Dn], or [Home,End]; additionally, a letter "A-Z" may be typed to go 
  237.     to the next file beginning with that letter, or "\" to go to the next 
  238.     subdirectory.  When the cursor is on a subdirectory, pressing [Enter] 
  239.     allows you to view its contents in turn; when it is on a file, pressing 
  240.     [Enter] selects that file to complete your command.
  241.          If you are loading files, you can also press "+" to "tag" files, 
  242.     marking them as a group, and then press [F4] to load them all at once.  
  243.     Pressing "+" again will untag a file, or [Esc] will untag all.
  244.          You can quit by pressing ^[Break], or clear the display and return to 
  245.     the directory prompt by pressing [Esc] or [Space].
  246.  
  247.          ^KF brings up the full-featured File browser; you may specify a 
  248.     drive, directory, and/or filename mask, and the contents will be 
  249.     alphabetically listed.  (The default, if you just press [Enter], is the 
  250.     directory shown at the ">dir" prompt, and all files *.*.)  Below you will 
  251.     see, in addition to the cursor motions already described, a full 
  252.     complement of operations to apply to the file the cursor is on:
  253.            [F1]   LOAD an additional file to edit;
  254.            [F2]   replace the current file with a NEW one;
  255.            [F3]   READ a file into the current file;
  256.           [Del]   DELETE the file (be careful, deletion is immediate).
  257.     If the file you want to load or read requires a different file mode, you 
  258.     can first press "/" and the correct mode letter (D,N, etc).
  259.          When the cursor is on a directory, you can press [Del] to REMOVE it 
  260.     (if empty), or [Enter] to view its contents.  (This returns you to the 
  261.     ">dir" prompt, where you can actually specify any new drive/directory.)
  262.          You can also press "+" to tag files, marking them as a group, and 
  263.     then press [F4] to load them all at once.  (Other operations cannot be 
  264.     performed while tagging.)  Pressing "+" again will untag a file, or [Esc] 
  265.     will untag all.
  266.          You can quit by pressing ^[Break], or clear the display and return to 
  267.     the directory prompt by pressing [Esc] or [Space].
  268.  
  269. FIND/REPLACE (^QF,^QA; ^L,^\) -  ^QF is the command to FIND a string.  The 
  270.     search normally proceeds from the cursor position forward, and is case 
  271.     (upper-lower) sensitive.  Some control codes (like ^M) require the ^P 
  272.     prefix.  Graphic characters can be entered with AltG.
  273.         Special codes: ^_ (Ctrl-underline) functions as a wildcard, matching 
  274.     any single character.  Use the single code ^M (CR, or [Enter]) to match 
  275.     the end of a line (CR,LF); in documents, a string STARTING with ^M will 
  276.     match a HARD CR (without preceding space) only.  Use the special code ^^ 
  277.     (Ctrl-caret) to find line overstrikes created by ^PM.  Examples:
  278.               Find: ^MLABEL       matches "LABEL" at start of line only;
  279.               Find: M^_.          matches "Mr.", "Ms.", etc.
  280.         ^QA is the REPLACE command.  It asks for a string to find, as above, 
  281.     then what to change it to.  Normally, the cursor will move to each 
  282.     occurrence of the string, and you will be asked ("Chg?") whether to change 
  283.     it; answer "Y"es or "N"o, or "*" to change all the rest without asking 
  284.     individually, or press [Esc] to quit.
  285.          There are several options for find/replace:
  286.            "B" = search Backward for the specified string;
  287.            "I" = Ignore upper/lower case (case insensitive search);
  288.            "W" = whole Word only (skip instances part of a larger word);
  289.            "G" = search Globally (from start or end of current file);
  290.            "M" = Multi-file search (continues through all files being edited);
  291.            "N" = No query: replace all instances without asking.
  292.     To skip the options prompt, finish entry of the find string (for ^QF) or 
  293.     replace string (for ^QA) by typing ^[Enter] (or ^J) instead of [Enter].
  294.          ^L instantly repeats the last find or replace (^QF/^QA) operation 
  295.     once more; the "B,I,W,M" options remain as last specified.  ^\ also 
  296.     repeats, but in the reverse direction ("I,W,M" remain unchanged).
  297.          NOTES: Replacing will cause reformatting if auto format (^OM) is on.  
  298.     (Be careful with this in a file with varying margins.)  "N"o query is 
  299.     assumed whenever ^QA is used in a macro.  [VINST can set "I"gnore-case as 
  300.     your default, in which case specifying "I" means case sensitive.]
  301.  
  302. FOREIGN CHARACTERS -  Characters in the upper ASCII range (80-FF or 128-255), 
  303.     such as foreign letters and accents, can be entered directly into text 
  304.     using either standard DOS method: one of the DOS KEYBxx keyboard map 
  305.     utilities, or the [Alt] key and numeric keypad (hold down [Alt] while 
  306.     pressing keypad 1,5,5 for character 155).
  307.          VDE treats these characters as "graphics": you are limited to a total 
  308.     of 32 such codes at a time, and any that you have used may be found in the 
  309.     menu brought up by the AltG command.  See GRAPHICS.
  310.  
  311. GRAPHICS (AltG) -  You can enter a PC graphic (or foreign) character into the 
  312.     file either directly from the keyboard, via [Alt] and the numeric keypad, 
  313.     or with the AltG command.  You will be presented with a menu of up to 32 
  314.     characters (labeled A-Z,1-6) to choose from; the default set contains some 
  315.     useful box drawing parts, and has room free for other characters that 
  316.     might be loaded.  [It can also be modified with VINST.]
  317.          In addition, any individual menu entry can be redefined: type "=", 
  318.     then the code (A-6) to change.  (If a graphic definition is present in any 
  319.     file being edited, you cannot change it.)  You can then select the desired 
  320.     character from the complete graphics set, by moving the cursor to it and 
  321.     pressing [Enter].  Alternatively, if you press [Tab], you may enter the 
  322.     extended ASCII code in either hex (2 digits 80-FF) or decimal (3 digits 
  323.     128-255) format.  Example: the Greek alpha can either be picked off the 
  324.     menu, or entered as "E0" hex or "224" decimal.  Once defined, the graphic 
  325.     can be entered into the file by pressing its menu letter.
  326.          As a further convenience, you can type "-" to clear all entries not 
  327.     needed for graphics already present in your files.
  328.          Graphics are stored in disk files in accord with the current file 
  329.     mode.  Printing of graphics depends on whether your printer driver is 
  330.     designated [see PRINTER INSTALLATION] as PC graphics (PC8) or Roman8, or 
  331.     neither, in which case VDE will "emulate" them, choosing standard ASCII 
  332.     character overstrikes that come as close as possible.  This usually works 
  333.     well, especially for the foreign language characters.
  334.          NOTE: a few "control codes" in the ASCII range 00-1F,7F, if entered 
  335.     into a file with ^P, will also appear in the graphics table, because of 
  336.     the way VDE represents them internally.
  337.          CAUTION: If you load a file containing many graphics (or binary data 
  338.     that will be interpreted as graphics), VDE will try to add each in turn to 
  339.     the table.  If the graphics table fills up, any further graphics will be 
  340.     replaced by spaces.  You will see the "Graphics overflow" error message, 
  341.     and protected mode (R/O) will engage, to guard against saving to disk and 
  342.     corrupting the file.  (One common cause of this error is attempting to 
  343.     read a word processor file in the wrong file mode.)
  344.  
  345. HEADER (^OQ) -  The "header" at the top of the screen can be toggled on and 
  346.     off with ^OQ.  It provides useful information, but can be removed if you 
  347.     prefer a screen showing nothing but your text.  It looks like this:
  348.     -----------------------------------------------------------------------
  349.     + VDE.DOC /A      P 14   L 11   C 48    Ins    vt hy AI DS J+ PS ! ^K_
  350.                  or (NP,BZ)              (WIn,R/O)      (AF)  (MR) (?,")
  351.     -----------------------------------------------------------------------
  352.     '+' = Multi-file flag indicates other file(s) are also being edited.
  353.     'VDE.DOC /A' = Current filename and mode.  The full directory information, 
  354.          along with other files being edited, can be displayed with the ^KI 
  355.          command (see INFORMATION).
  356.     'P 14...' = Cursor position in file by page (in document modes), line, 
  357.          column.  If pagination is off (^OP0), you will see 'NP' instead of a 
  358.          page number; in block zoom mode (^KZ) you will see 'BZ'.
  359.     'Ins','WIn' = Insert mode (^V) or Word Insert (^]) on.
  360.     'R/O' = Read/Only, protected mode (^KO) on.
  361.     'vt' = Variable Tab mode (^OV) on. 
  362.     'hy' = Hyphenation (^OH) enabled.  (Documents only)
  363.     'AI' = Auto Indent mode (^OA) on.
  364.     'AF' = Auto Format mode (^OM) on.  (Documents only)
  365.     'DS' = Double spacing (^OS) on.
  366.     'J+','J-' = Right Justification mode (^OJ) on.  (Documents only)
  367.     'MR' = Margins released (^OX).  (Documents only)
  368.     'PS' = Proportional spacing (^OK) on.
  369.     '!','?','"' = Macro is executing, awaiting input, or being recorded.
  370.     '^K_' = Command key prefixes (and some prompts) display here.
  371.  
  372.          In 40-column mode, an abbreviated header is shown:
  373.     ----------------------------------------
  374.     + VDE.DOC /A      I!  P 14  L 11  C 48      "I,W" = Insert, Word Insert
  375.                or (W,R)(?,")      (^K_)           "R" = Read/Only
  376.     ----------------------------------------
  377.  
  378. HYPHENATION (^OH,^P-) -  VDE can't hyphenate automatically, but it can 
  379.     recognize hyphens that you type in the text, treating them as a legitimate 
  380.     place to break a line.  ^OH toggles hyphenation on and off.  If off, 
  381.     hyphens are not treated as wordbreaks.  [The default can be changed.]
  382.          In addition to ordinary hyphens, "-", there are "soft hyphens", which 
  383.     you can enter by typing ^P- (^P,hyphen), and which display in a different 
  384.     color.  Soft hyphens indicate optional places to break a long word: they 
  385.     print as a hyphen when they fall at the end of the line, but not if they 
  386.     wind up in mid-line.  (Note: only file modes /D,W,S,P,F store soft hyphens 
  387.     as such; when saving to disk in other modes, as in printing, they either 
  388.     become hyphens or disappear, as appropriate.)
  389.  
  390. INFORMATION (^KI,AltI) -  ^KI displays an Information message telling you:
  391.       - The full name (including directory) of the current file;
  392.       - When it was last saved, and whether (Y/N) it has been changed since;
  393.       - Any unpaired print toggles (^B,^D,^S etc) in a document;
  394.       - A word count for document files;
  395.       - The current size of the file in bytes or k (1k = 1024 bytes);
  396.       - Bytes of memory used in this text segment, and percentage full;
  397.       - The amount of memory free to edit further files;
  398.       - The names of all other files being edited.
  399.          AltI displays the VDE version, date, and copyright.  (An uninstalled 
  400.     copy of VDE does this automatically on startup.)
  401.  
  402. INSERTING (^V,[Ins],^],^[Ins],^_,^N) -  ^V or [Ins] toggles Insert mode 
  403.     on/off, and ^] or ^[Ins] toggles Word Insert.
  404.          When both are OFF, VDE is in Overwrite mode: when you type a 
  405.     character, it replaces the one the cursor is on; when you press [Enter], 
  406.     the cursor advances to the beginning of the next line of text.  With 
  407.     Insert (^V) ON, when you type a character, it is inserted into the text, 
  408.     while any characters that were already there are carried to the right; 
  409.     when you press [Enter], a return is inserted into the text, causing the 
  410.     beginning of a new line.
  411.          Word Insert is a hybrid of the two modes: mostly it behaves like 
  412.     Overwrite mode, so you can replace an existing word; but when the cursor 
  413.     reaches the end of the word, it starts to behave like Insert mode, so you 
  414.     can continue typing without overwriting the next word.  This is handy for 
  415.     revising existing text.
  416.          The ^_ and ^N commands (insert space, insert CR) are most useful in 
  417.     Overwrite mode (avoiding the need to turn Insert on and back off).
  418.  
  419. JUSTIFICATION (^OJ) -  ^OJ controls right justification mode, cycling between 
  420.     three states:
  421.               ADD.  ("J+" in header.)  Text paragraphs will be 
  422.          formatted with an even right margin, by inserting extra 
  423.          spaces between words as necessary.
  424.               REMOVE.  ("J-" in header.)  Formatting will undo 
  425.          justification by removing any extra spaces between words, 
  426.          leaving an uneven right margin again.
  427.               OFF.  Formatting does not change spacing of text; 
  428.          right margin is left uneven.
  429.     Thus the Reform (^B) command can justify or de-justify text as desired.
  430.          Right-justified text should not be saved to disk in file mode /U 
  431.     (which has no margin structure) or in modes /X,/M,/P, or /F (because 
  432.     XyWrite, MS Word, and WordPerfect will not recognize VDE's method of 
  433.     justification).
  434.          Justification does not work with proportional spacing (^OK).
  435.  
  436. LINE SPACING (^OS) -  ^OS toggles between single and double line spacing.  In 
  437.     double space mode, the following functions generate double carriage 
  438.     returns: [Enter] (^M), Insert CR (^N), Reform (^B), Wordwrap.  You can 
  439.     easily mix single and double spacing; ^B can convert between the two.
  440.          Note: a single-spaced file can also be printed out double-spaced with 
  441.     the "D" option of the ^KP command (see PRINTING).
  442.  
  443. MARGINS (^OR,^OL,^OX,^OC,^OF) -  ^OR sets the Right margin, and enables text 
  444.     formatting.  At the prompt, enter the column number (up to 255), or just 
  445.     press [Enter] for the current cursor column.  (Note: in proportional mode 
  446.     (^OK), the number is interpreted in 1/10" instead of characters.)
  447.          ^OL similarly sets the Left margin column; the value must be less 
  448.     than the right margin.  (^OL is normally used for indenting selected 
  449.     paragraphs.  To leave blank space at the left of the page throughout when 
  450.     PRINTING, see the "L" option of the ^KP command, or the left margin 
  451.     setting in PRINTER INSTALLATION.)
  452.          "Wordwrap" is automatic in all document modes whenever the margins 
  453.     are set: anything typed before the left margin will move up to it; 
  454.     anything typed past the right margin will wrap over to the next line.  
  455.     (See also REFORMAT and AUTO FORMAT.)  Wordwrap and formatting are disabled 
  456.     if the right margin is set to 1, or while margins are released (^OX).
  457.          (NOTES: Margins cannot be set in nondocument modes; a left margin 
  458.     cannot be set in /X, /U, or /M mode.  For page top/bottom margins see 
  459.     PRINTING.)
  460.          ^OX toggles margin release, allowing you to type outside the margins.  
  461.     Use ^OX again to cancel.
  462.          ^OC Centers the current line with respect to the margins; ^OF sets 
  463.     the line Flush right.  Afterward, the cursor advances to the next line.
  464.  
  465. MATCHING FILES (AltM) -  This command can locate small differences between two 
  466.     largely similar files (perhaps an earlier and a later revision of your 
  467.     work).  You must first load these two files (AltL), then split the screen 
  468.     between them (AltW), and position the cursor in corresponding places in 
  469.     both files (for example, the top).
  470.          Then press AltM.  Starting from these positions, VDE searches for any 
  471.     difference between the files.  If there is one, VDE will stop on those 
  472.     lines, showing the disagreeing passages side by side.  If you want to 
  473.     continue, press AltM again.  (If the difference was significant you may 
  474.     first need to reposition one cursor to match the other.)  If the cursor 
  475.     winds up at the end of both files, they match.
  476.          Note: in document modes, AltM compares word by word, ignoring mere 
  477.     formatting differences (margins, spacing etc).  In nondocument modes, it 
  478.     is an exact character by character comparison.
  479.  
  480. MENUBARS (^[Esc]) -  ^[Esc] is used to call up the MenuBar.  (LeftShift-Esc 
  481.     can also be used.)  Press the hilighted letter to select a submenu, then 
  482.     select again to perform a command.  You can press [Esc] or [Space] to back 
  483.     up to the main menu, or ^[Break] to abort.
  484.          The ^[Esc] command can also be used in a macro definition; if entered 
  485.     at the Esc[ prompt, it displays as a hilighted "!", and should be followed 
  486.     by one or two letters for menu selections.  (This feature is used in the 
  487.     WordPerfect compatibility macros contained in WP.VDF, to present menu 
  488.     choices; see DEFAULT FUNCTION KEYS.)
  489.  
  490. MULTIPLE FILES (AltL,AltB,AltN,AltX,AltQ,AltC,AltP) -  VDE allows you to edit 
  491.     up to 8 files simultaneously, if you have enough memory.  This can be done 
  492.     from the command line, by giving a list of several filenames.
  493.          Otherwise, to Load additional files, press AltL.  You can enter any 
  494.     number of filenames, with optional line/page numbers and modes (see 
  495.     SYNTAX); for an "untitled" work area, press ^[Enter] (or ^J).  You can 
  496.     also access the file browser with [Enter] or wildcards (see FILES).  (You 
  497.     will get an error message if you run out of memory, or are already editing 
  498.     the named file, or 8 files.)
  499.          Once multiple files are in use, AltB and AltN can be used to cycle 
  500.     back and forth through the files being edited.  If you Quit or Exit 
  501.     (^KQ,^KX) from one file, you will be returned to the previous one.
  502.          For convenience, AltX exits ALL files immediately, saving any changes 
  503.     made.  AltQ quits ALL files immediately, without saving; if any of them 
  504.     have been modified, you will be prompted (just once) to confirm this.
  505.          AltC Cuts a marked block of text, placing it in a buffer for later 
  506.     recovery.  [VINST lets you choose whether the block will also be deleted.]  
  507.     AltP Pastes in the previously cut text at the cursor position, allowing 
  508.     block copying and moving between files.
  509.          It is possible to view two files on screen at once (see WINDOWS).
  510.  
  511. PAGINATION (^OP,^PL) -  The ^OP command sets the page length.  Enter a value 0 
  512.     to 255 lines, or just press [Enter] to restore the default.
  513.          A nonzero value determines the page and line shown in the document 
  514.     header ("P xx L xx"), and all page functions in the Print routine 
  515.     (pagination, headers, start/stop at page) are enabled.  A formfeed will be 
  516.     sent to eject each full page.  [VDE does not send a formfeed before 
  517.     printing; install one in your printer initialization if you want.]
  518.          When zero, pagination is off.  The header will say "NP L xxxx", 
  519.     showing you the absolute line number in the file; printing occurs with no 
  520.     page breaks, though a formfeed is sent at the end of the file.  (To skip 
  521.     even this, use the block print option "B", which allows you to print 
  522.     several small things on the same sheet or, in conjunction with the "*" 
  523.     option, multiple copies of index cards, labels, etc.  See PRINTING.)
  524.          The ^PL command embeds a formfeed (^L) in the text, to begin a new 
  525.     page; the best place to put it is at the beginning of a line.
  526.  
  527. PARAGRAPH INDENT (^OG) -  You can indent text simply by changing the left 
  528.     margin (^OL), but there are times when you want only a temporary indent.  
  529.     ^OG gives a "paragraph indent"; each time you use it, the left margin is 
  530.     reset to the next tab stop over (see TABS).  The indentation lasts until 
  531.     you type the [Enter] at the end of the paragraph (or use the ^B or ^OL 
  532.     commands), at which time the original left margin is restored.
  533.  
  534. PLACE MARKERS (^KM,^QM) -  You can set any number of temporary place markers 
  535.     in the text with ^KM, when you want to return to a spot later.  The marker 
  536.     displays as a highlighted "!", and can be deleted if no longer needed.  
  537.     The ^QM command moves the cursor to the next place marker in the file, 
  538.     cycling back to the top of the file as needed.  Place markers are NOT 
  539.     saved to disk.
  540.  
  541. PRINT PREVIEW (^OD) -  This command shows you a preview of the text as it 
  542.     would print: with all non-printing codes (markers, ^P codes, etc) hidden, 
  543.     and page breaks indicated by a row of dotted lines.  This is handy for 
  544.     making sure that text is aligned properly, and will help you avoid wasting 
  545.     time and paper on unacceptable printouts.  You can scroll through the file 
  546.     in this mode with [PgUp,Dn] or ^R,^C; or move to the top or bottom, with 
  547.     ^[Home,End].  Press [Esc] to continue editing.
  548.  
  549. PRINT STYLES/CODES (^P) -  This command prefix is used to enter various 
  550.     "codes" in the ASCII range 00-1F into the text, usually for purposes of 
  551.     printer control.  Most codes are entered in a standard fashion: ^PA embeds 
  552.     ^A, etc.  Those with defined functions in VDE documents display as 
  553.     highlighted letters, and always insert; the rest (all, in nondocuments or 
  554.     /A mode) display as graphics, and observe the current INSERT status.  
  555.     (Warning: use ^PZ with caution, since many programs treat ^Z (hex 1A) as 
  556.     an end of file mark.)
  557.          Several other common control codes produce special effects:
  558.           ^P^I - hard (ASCII) tab - printers respond variously to this
  559.             ^L - formfeed - will cause a page break
  560.             ^H - backspace - overstrike previous character
  561.             ^M - carriage return - enter a CR without a LF to overstrike line
  562.                   (do NOT hit [Enter] again after this, just continue typing)
  563.     The further codes below do NOT operate in nondocuments or /A mode.
  564.          ^P^G causes printing to pause immediately, until you press a key to 
  565.     continue ([Esc] will cancel).  This allows you to adjust the platen for 
  566.     printing various forms.  (Note: on many dot matrix printers, can only be 
  567.     used at the start of a line.)
  568.          ^P,Esc or ^P[ can be used to embed the "Escape" code (hex 1B) in a 
  569.     file.  But these are most commonly used for printer control, and VDE 
  570.     offers a much easier way of doing this.  In place of complex "escape 
  571.     sequences" for print styles (underlining, etc), VDE lets you enter a 
  572.     single marker, which will be translated into the proper codes during 
  573.     printing.  VDE supports a set of 13 codes for this purpose: seven toggles, 
  574.     six switches.  [See PRINTER INSTALLATION on how to install the proper 
  575.     driver for your printer.  Otherwise, only ^PS and ^PX will work.]  The 
  576.     conventional WordStar meanings of these codes are:
  577.        Toggles: ^P^B  boldface        Switches: ^P^Q  (user def 1)
  578.                   ^D  ("doublestrike")            ^W  (user 2)
  579.                   ^S  underline                   ^E  (user 3)
  580.                   ^Y  italic ("ribbon")           ^R  (user 4)
  581.                   ^T  superscript                 ^A  alternate pitch
  582.                   ^V  subscript                   ^N  standard pitch
  583.                   ^X  strikeout [with "-", "/", etc -- see USER OPTIONS]
  584.     But you can use them for anything you like.  "Toggles" are good for 
  585.     features like underlining that are turned on and off; enter them in pairs, 
  586.     to mark the beginning and end of the desired text.  "Switches" are better 
  587.     for multi-valued parameters like character pitch or print quality.
  588.          If toggles are not properly paired, you will find print effects 
  589.     continuing throughout the rest of your document.  To save time and effort, 
  590.     use the ^KI command to check for this before printing.
  591.  
  592. PRINTER DRIVERS (AltV,AltU) -  Since many people use more than one kind of 
  593.     printer, VDE accomodates two different printer drivers, a primary and an 
  594.     alternate.  Before printing a file, you can select which one is active 
  595.     using AltV.  [You can install different drivers with VINST.]
  596.          AltU gives you access to an unlimited number of further printer 
  597.     drivers in the form of .VDP disk files; select "L"oad, then type the file 
  598.     name.  [See PRINTER INSTALLATION for instructions on how to create such 
  599.     files.]  The new driver will replace the previous primary.
  600.  
  601. PRINTING (^KP) -  The ^KP command Prints the file you are editing.  The page 
  602.     format is determined by several factors: the current page length (^OP) 
  603.     determines the number of lines of text per page.  The top and left margins 
  604.     can be varied with options below.  Other options produce either a centered 
  605.     page number at the bottom of the page, or a header, consisting of a page 
  606.     number in the corner and/or a string of text; the spacing of these is 
  607.     controlled by settings in the printer driver.  Various printers position 
  608.     paper differently, but can typically put at least 60 lines of text on a 
  609.     standard 11-inch page.
  610.          You will be asked for a set of "Options:", at which point you may 
  611.     enter one or more of the following, in any order:
  612.  
  613.        @nn    begins printing AT page nn of the document.
  614.        =nn    RENUMBERS the printout so first page is numbered nn.
  615.        #nn    prints only (up to) a TOTAL of nn pages.
  616.        O,E    prints only Odd or Even pages (print one, then run the paper 
  617.             back through and print the other, for double-sided printing).
  618.        F      prints FACING pages (header/number reversed on even pages).
  619.        *nn    prints the entire job out nn TIMES (nn=1...255).
  620.  
  621.        N      NUMBERS pages sequentially, at top right.
  622.        C      numbers pages at bottom CENTER.
  623.      "..."    uses the quoted string as a HEADER.  The string will print at 
  624.             the top right next to the page number unless it begins with a "<" 
  625.             character, in which case it prints at the left edge.
  626.               Note: you can include the current Filename, Time or Date in the 
  627.             header simply by entering ^F, ^T, or ^D, respectively.  To enter a 
  628.             quote mark, double it ("").
  629.        S      SUPPRESSES the header/page number on the first page of output.
  630.        Tnn    sets a TOP MARGIN skip of nn lines.     [The default margins can
  631.        Lnn    sets a LEFT MARGIN skip of nn columns.    be set with VINST.]
  632.  
  633.        B      prints only the currently marked BLOCK.  Pagination is disabled, 
  634.             and no final formfeed is sent; you may have to eject the page.
  635.   (FILENAME)  redirects printer output to a disk file.  All print control 
  636.             codes will go into the file just as they would have been sent to 
  637.             your printer.  If you want to append the output to an existing 
  638.             file, type a "+" before the name: (+FILENAME).
  639.        A      ADDRESSES an envelope; see ENVELOPES.
  640.        P      PAUSES for your keystroke before each page prints (sheet feed).
  641.        ^      FILTERS control codes (like ^X) so they print out as text "^X".
  642.        D      DOUBLESPACES the printout.
  643.      '...'    sends an additional string of printer initialization commands 
  644.             before printing begins.
  645.  
  646.               EXAMPLE 1:      Options:  "<STATUS REPORT: ^D" N F
  647.     will put a header like "STATUS REPORT: 10/19/90" at the top left of each 
  648.     page, and the page number at the top right (vice versa on even pages).
  649.               EXAMPLE 2:      Options:  L12 #1
  650.     will print one page only, with an added left margin of 12.  (Printing a 
  651.     single page is a good check of page layout before going ahead to print a 
  652.     long file.  To continue at page two, use Options: @2.)
  653.               EXAMPLE 3:      Options:  BD(+SCRATCH)
  654.     will append the print output of the current marked Block, double spaced, 
  655.     to the disk file SCRATCH.
  656.  
  657.          ABOUT PAGINATION:  If you set the page length to 0 (see ^OP) or 
  658.     select the 'B' option to print only a block, the output will NOT be 
  659.     paginated by VDE -- that is, data will be sent to the printer in a 
  660.     continuous stream, and the printer will break pages when it considers them 
  661.     full.  No headers or page numbers will be printed; in fact, none of the 
  662.     options @,=,#,O,E,F,N,C,S,T,P,"...", which involve page numbering, are 
  663.     allowed with 'B'.  If for some reason you do want paginated printing of a 
  664.     block only, you must cut and paste it to a new file (see AltC,P), and 
  665.     print it as a separate file.
  666.  
  667.          ABOUT MARGINS: A left margin that is part of a document's format (via 
  668.     ^OL, etc) affects the file text but not placement of headers or page 
  669.     numbers.  Left margin settings external to the text ("Lnn", or printer 
  670.     driver default) shift the entire printout to the right, including headers 
  671.     and page numbers.  Because these settings are also in columns, their 
  672.     physical width will vary according to the font in use; you will get more 
  673.     consistent results if you use your printer's absolute left margin setting 
  674.     feature (see PRINTER INSTALLATION).
  675.  
  676.          ABOUT INITIALIZATION:  Codes '...' must be entered as actual 
  677.     characters or control codes, not digits.  If the command is "Esc A" (1B 41 
  678.     hex), press quote, ^P, [Esc], A, quote.  To enter a quote mark (27 hex), 
  679.     double it ('').  (Some control codes, including Esc, must be entered with 
  680.     the ^P prefix; see PROMPTS.  Codes 00-1F are entered as ^A, ^B, etc.  You 
  681.     may find an ASCII table helpful; see VINST.REF.)  An empty string ('') can 
  682.     be used to skip the driver's usual initialization, and can be followed 
  683.     (after a space) by another string '...' to use instead.
  684.  
  685.          OTHER NOTES:  Options 'C' and 'N' cannot be used together.
  686.          If you are in /W or /S file mode, any WordStar dot commands in the 
  687.     file (lines beginning with ".") will not be printed.
  688.          You can cancel printing at any time by pressing [Esc], or pause by 
  689.     pressing any other key (press a key again to resume).
  690.  
  691. PROPORTIONAL SPACING (^OK) -  Normally VDE assumes a fixed pitch font: one 
  692.     character equals one print column.  Yet if your printer has a proportional 
  693.     font, you can get VDE to use it, and to format text so that it will print 
  694.     with more appropriate margins.  Use ^OK to toggle proportional mode on and 
  695.     off.  When on, you will see "PS" in the header; all wordwrap and 
  696.     reformatting (^B,^OC,^OF) will take advantage of a table of varying 
  697.     character widths, for a better aligned printout, though line lengths may 
  698.     look uneven on screen; and when you print, a proportional font will be 
  699.     selected.
  700.          In proportional mode, the right margin needs to be interpreted in 
  701.     inches rather than characters, based on a conversion of 10 cpi, so that a 
  702.     right margin (^OR) of 70 means 7.0".  (Note: characters may extend well 
  703.     beyond the 70th column.)
  704.          Mixing proportional and fixed print in the same document is a little 
  705.     tricky.  You must install and use a print (^P) toggle or switch to 
  706.     alternate between the two fonts, type or format the fixed pitch parts with 
  707.     ^OK off, the proportional parts with ^OK on (and appropriately altered 
  708.     margins), and then print with ^OK off.
  709.          [See PRINTER INSTALLATION to install codes for proportional mode on 
  710.     your printer, and CHARACTER WIDTHS to adjust the width table.]
  711.  
  712. PROTECTED MODE (^KO) -  When you want to view a file without accidentally 
  713.     modifying it, you can engage protected mode with ^KO: the flag "R/O" (for 
  714.     Read/Only) shows in the header, and any command that would modify the file 
  715.     will be rejected as an "Invalid Key".  To disengage, use ^KO again.
  716.          If you load a file with the DOS R/O attribute, protected mode will 
  717.     engage automatically, and the ^KO command will not be able to disengage 
  718.     it.  The text cannot be modified with VDE, unless you first rename it 
  719.     (^KE) to a new filename.
  720.  
  721. REFORMAT ([Enter],^B;^OB) -  In documents, pressing [Enter] creates a 
  722.     permanent or "hard" Carriage Return marking the end of a paragraph.  (This 
  723.     is a CR without a preceding space; wordwrap creates a removable "soft CR", 
  724.     preceded by a space.  See TEXT FORMATTING.)
  725.            ^B reformats the paragraph the cursor is in according to the 
  726.     current margin settings and line spacing.  (Thus ^B is used not only to 
  727.     reshape a paragraph after editing, but also to change its format in 
  728.     various ways: see MARGINS, JUSTIFICATION, LINE SPACING.)  If the top line 
  729.     is indented relative to the next one, VDE preserves that as paragraph 
  730.     indentation.  To reformat an entire file use the MACRO command (Esc[) to 
  731.     repeat ^B.  (See also AUTO FORMAT.)
  732.          ^OB toggles hard CR/TAB display.  In document modes, these are 
  733.     normally marked by left-arrow or double-arrow characters, to distinguish 
  734.     them from soft CRs and spaces; but if you find this distracting, you can 
  735.     turn them off.
  736.  
  737. RULER LINE (^OT) -  To help you align text properly, ^OT displays a "ruler 
  738.     line" above the text.  Type ^OT again to remove it.  A moving pointer 
  739.     indicates the current column.
  740.          In each column you will see one of several symbols: the arrow "v" is 
  741.     the cursor column; "L,R" designate the current margins; "." indicates 
  742.     areas outside the current margins, "-" within them.  Also, tab stops are 
  743.     marked by either "!" (Variable) or ":" (Hard).  Examples:
  744.         (/D mode)      L-----!---!----------v--!--------------R........
  745.         (/N mode)      :.......:.......:....v..:.......:.......:.......
  746.  
  747. RUN COMMAND/SHELL (AltR) -  AltR lets you run DOS commands without leaving 
  748.     VDE.  An imitation DOS prompt is produced (e.g., "C:\WORK>"); you can copy 
  749.     or rename files, or run any other program you like, and afterwards VDE 
  750.     will prompt you to "Press [Esc]", which will return you to your undis- 
  751.     turbed VDE editing session.
  752.          In addition, you may simply hit [Enter], which lets you out into what 
  753.     is known as a Command Shell: you are actually back IN DOS, and can use any 
  754.     number of commands or move around as you like; when through, you need to 
  755.     type the DOS command EXIT to return to VDE.
  756.          Caution: don't load new memory-resident utilities from within the 
  757.     AltR command; this fouls up the DOS memory allocation.
  758.          To use AltR, you must have enough free memory to load and run the 
  759.     chosen program; and VDE must be able to find COMMAND.COM in order to 
  760.     execute it, via the COMSPEC environment variable.  Be sure either that 
  761.     your AUTOEXEC.BAT file includes a line like
  762.                         SET COMSPEC=C:\COMMAND.COM
  763.     or that your CONFIG.SYS file includes a line like
  764.                         SHELL=C:\COMMAND.COM C:\ /P
  765.     (In either case replace "C:\" with the appropriate directory.)
  766.  
  767. SAVE/EXIT (^KE,^KS,^KX,^KD,^KQ) -  ^KE renames your work, allowing you to 
  768.     change the filename (including directory) to which it will be saved, 
  769.     and/or the filemode governing its format.  At the prompt you can enter a 
  770.     new filename, a new directory, a new mode, or any combination of these.  
  771.     You can make your work "untitled" by pressing ^[Enter] (or ^J) at the 
  772.     prompt.  (See PROMPTS for other control key usage.)
  773.          ^KS Saves your work so far, writing the file to disk under the 
  774.     filename in the header.  (If it's "untitled", a new name will be 
  775.     requested.)  If the file has not been modified, you will be prompted to 
  776.     confirm that you meant to save it again anyway.  For safety, when you save 
  777.     changes to an existing file, a copy of the previous version is preserved 
  778.     as a BACKUP FILE (with the same name, but extension ".BAK").  If you 
  779.     decide to abandon your latest changes, you can recover the old version 
  780.     from the BAK file.  [You can choose not to maintain BAK files, if you 
  781.     prefer; see VINST, OPTIONS.]
  782.          There are several different commands for finishing up:
  783.        ^KX eXits, saving your work (if modified).
  784.        ^KD (Done) saves your work, then loads a new file to edit.
  785.        ^KQ just Quits, without saving to disk.  If the file has been modified, 
  786.     you will be prompted to confirm that you meant to do this!
  787.  
  788. SCREEN CONTROLS (^W,^Z; Alt[^,v,<,>]; ^OE,^OZ) -  VDE provides a number of 
  789.     commands to control the display screen:
  790.          ^W and ^Z scroll the screen up and down a line at a time, without 
  791.     moving the cursor in the text (unless necessary).
  792.          Used with [Alt], any arrow key also causes the screen to scroll: 
  793.     up/down by 1/3 screen, or right/left 32 columns.  Again, the cursor is not 
  794.     moved unless necessary.  (The screen cannot shift rightward past the end 
  795.     of the current line.)
  796.          ^OE makes the current line the top of the screen.
  797.          ^OZ temporarily blanks the entire screen: for avoiding CRT burn-in, 
  798.     or just protecting work from prying eyes or fingers.  Restore the screen 
  799.     by pressing [Esc].  This is also useful if some other software (like a 
  800.     memory-resident utility) has messed up the screen: type ^OZ,Esc and VDE 
  801.     will completely restore it.
  802.  
  803. SCREEN SIZE (AltA,AltE) -  VDE automatically adapts to any size text screen 
  804.     currently in use (minimum: 40 columns, 8 lines).  This means that VDE 
  805.     supports nonstandard screen sizes (like 96 or 132 columns) provided by 
  806.     some PC video systems; it will run on laptop/palmtop computers with 
  807.     smaller displays; and visually impaired users can use the DOS command MODE 
  808.     40 to edit with a 40 column large-type screen.  When running with fewer 
  809.     than 80 columns, VDE omits most toggle indicators from the header, and 
  810.     truncates the function key labels; also, some menus remain in 80-column 
  811.     format, and can be scrolled horizontally by pressing the [<,>] keys while 
  812.     they are on screen.
  813.          You can use your own software (like the popular UltraVision program, 
  814.     or any utilities that may have come with your video adapter card) to 
  815.     change the font or screen size (lines,columns) before running VDE, or even 
  816.     while editing (via the AltR command).  VDE also offers two internal 
  817.     commands to vary screen size:
  818.          AltA changes the screen width, toggling between normal (80-column) 
  819.     mode and wide (132-column) mode.  It can be used alone, or in combination 
  820.     with AltE.  This command works ONLY with certain brands of video cards 
  821.     which offer 132 column displays [see INSTALLATION to specify yours], or if 
  822.     you are running UltraVision with a card that supports its 132 column mode.
  823.          AltE changes the screen length (number of text lines displayed).  In 
  824.     standard 132-column modes it simply toggles between the normal 25-line and 
  825.     50-line (VGA; 43 for EGA) text.  But when possible, it displays a prompt 
  826.     offering a wider range of sizes:
  827.                     Standard VGA - 20,25,28,33,40,50,57 lines  (80 cols)
  828.                              EGA - 17,25,29,35,43,50
  829.             with UltraVision VGA - 25,34/36,50/53,60/63 lines  (80/132 cols)
  830.                              EGA - 25,34,43,60
  831.     You can select a letter code A-G, or [Enter] for your default value [which 
  832.     can be changed with VINST].  Larger characters are easy on the eyes; 
  833.     smaller ones can pack more text into one screen.
  834.          NOTE: Under DESQview, you must use its "Rearrange:Video" menu 
  835.     selection to change text sizes; VDE's own commands will not work.
  836.  
  837. SPELLING CHECK (AltH,AltJ) - For registered users who have the spelling 
  838.     checker, AltH will check spelling of the word at the cursor, and AltJ will 
  839.     go through the document beginning at the word after the cursor.  See the 
  840.     VDESPELL.DOC file that comes with the speller for complete instructions.
  841.  
  842. SPLITTING FILES (AltS) -  If you encounter a text file that is too large for 
  843.     VDE to load and edit, you can divide it into manageable chunks with the 
  844.     Split command.  You will be prompted for the name of the file to split; 
  845.     VDE will divide it in pieces whose names have a number added at the end of 
  846.     the file name.  Example: BIG.DOC will split into BIG1.DOC, BIG2.DOC, etc, 
  847.     each of which you can edit separately.  After 9, the numbers continue with 
  848.     letters A..Z.  (The original file also remains on disk.)
  849.          If necessary, the files can later be reassembled into one with the 
  850.     DOS COPY command, for example:  COPY BIG1.DOC+BIG2.DOC BIG.DOC.
  851.  
  852. TABS ([Tab],Shft[Tab]; ^OV,^OI,^ON; ^PI,Alt[Tab]) -  There are two tab modes, 
  853.     Variable and Hard; ^OV toggles between them.
  854.          In Hard Tab mode (the default for nondocuments), the [Tab] key 
  855.     produces an actual ^I (ASCII 09) character, which will overwrite the 
  856.     character at the cursor or, if Insert is on, insert before it.  Hard Tabs 
  857.     produce indents at fixed intervals [normally 8 columns; optionally 4 or 
  858.     16], and display as a bidirectional arrow in document modes.
  859.          In Variable Tab mode (the default for documents), the [Tab] key moves 
  860.     to the next tab stop set.  In Overwrite mode, the cursor moves over any 
  861.     existing text; in Insert mode, spaces are inserted into the text.  In 
  862.     either case, spaces are added at the end of a line if needed.
  863.          Up to sixteen tab stops may be set with ^OI, or cleared with ^ON; the 
  864.     defaults are in columns 6, 15, 35, and 55.  [These can be changed.]  Both 
  865.     commands prompt for a list of column numbers, or you can press [Enter] for 
  866.     the cursor column.  The Set command ^OI also accepts two options, both of 
  867.     which replace all previous tab settings:
  868.               @nn           Set tabs every "nn" columns
  869.               #n1,n2,...    Set tabs to columns "n1,n2,..." ONLY
  870.     You can simply clear all variable tabs by typing ^ON followed by "*".
  871.          The Shft[Tab] command tabs backwards (left to the previous stop), 
  872.     useful for moving around in tables, etc.
  873.          You can always get a Hard Tab with ^PI, or a Variable Tab with 
  874.     Alt[Tab], no matter which tab mode you are in.
  875.  
  876. TIME/DATE (AltT,AltD) -  VDE can read the DOS system clock and insert the 
  877.     current time and date in your file automatically.  Just press AltT for the 
  878.     Time, or AltD for the Date.  The string will appear at the current cursor 
  879.     location, as though you had typed it in yourself: for example,
  880.               1:21 PM            [or 13:21 -- VINST selects the format]
  881.               January 15, 1988   [or 1/15/88, 15 January 1988, 15.1.88]
  882.  
  883. UNDELETING (^U) -  The undelete function can be used to recover accidentally 
  884.     deleted text or overstruck characters.  The lost text will be replaced at 
  885.     the current cursor location.  ^U may be used repeatedly to undo a sequence 
  886.     of deletions, recovering each character, word, or line in order.  (Once 
  887.     all deleted text is restored, ^U does nothing.)
  888.          Exception: block deletions cannot be recovered sequentially, they 
  889.     must be undeleted immediately (before any other deletion occurs).
  890.          Undeletion can also be used as a sort of quick-and-dirty block move.  
  891.     For example, if the cursor is at the start of a word, the commands ^T^F^U 
  892.     (which of course can be assigned to a function key) will swap that word 
  893.     with the one following it.  Similarly, ^Y^X^U will swap two lines.
  894.  
  895. UPPER/LOWER CASE (^^; ^K",^K',^K^) -  ^^ (Ctrl-caret or 6) reverses the case 
  896.     of the character at the cursor, if it was a letter, and moves to the next.
  897.          The ^K^ (^K-caret) command reverses all text in a marked block (see 
  898.     BLOCK COMMANDS); ^K" makes all text in the block uppercase, ^K' lowercase.
  899.  
  900. WINDOWS (^OW; AltW,AltF; ^[PgUp,PgDn]) -  VDE can split the screen into two 
  901.     windows, showing either two parts of the same file or two different files.  
  902.     In either case, AltF moves the cursor back and forth between the two 
  903.     windows.  ^[PgUp] and ^[PgDn] scroll BOTH windows in synchronization.
  904.         ^OW is used within a SINGLE file; it creates a second window 
  905.     (originally a duplicate of the first, of course) in which you can move to 
  906.     and view or edit another location in the file at the same time.  (Note: 
  907.     any modifications made to the file will not be reflected in the inactive 
  908.     window until you return to it.)  Type ^OW again to undo windowing.
  909.         AltW splits the screen Window between two DIFFERENT files being 
  910.     edited, showing you both at once (note the different filename in the 
  911.     second window).  Type AltW again to undo.
  912.  
  913.  
  914. ================================  7. MACROS  =================================
  915.  
  916.  
  917. AUTOEXEC MACRO -  VINST can designate any function key definition you create 
  918.     as "autoexec", meaning a macro that will execute automatically whenever 
  919.     you first enter VDE.  This feature can be used for a variety of purposes, 
  920.     including changing defaults not available through VINST options.  See also 
  921.     FUNCTION KEYS.
  922.          Notes: if you load multiple files, remember that for settings which 
  923.     are specific to each file (like margins), only the first file will be 
  924.     affected.  You cannot use a utility like KEYSTACK that stuffs input into 
  925.     the DOS keyboard buffer before running VDE, if an autoexec macro exists.
  926.  
  927. FUNCTION KEYS ([F1]...[F12], EscA-Z,0-9) -  Up to 48 macros can be assigned to 
  928.     function keys; they can then be recalled and used with one keystroke.  
  929.     Each PC function key can be used alone or with Shift, Ctrl, or Alt, to 
  930.     produce:        [F1]...[F10]  =  F1....F10 in VDE notation
  931.               Shift-[F1]...[F10]  =  !F1..!F10
  932.                Ctrl-[F1]...[F10]  =  ^F1..^F10
  933.                 Alt-[F1]...[F10]  =  @F1..@F10
  934.     And, if you have an Enhanced (101-key) AT keyboard, also:
  935.               F11, F12, !F11, !F12, ^F11, ^F12, @F11, @F12
  936.     VDE comes with [F1] set as a "Help" key (^J), but this can be changed.
  937.          For those who find function keys difficult to remember, you can also 
  938.     assign a letter or digit to invoke a definition with the [Esc] key; thus, 
  939.     if your Address is on [^F3], you could also call it up with EscA.
  940.  
  941.          The Esc[ and Esc] commands (see MACRO DEFINITION) give the option of 
  942.     Storing the macro definition to any function key, so that the macro can 
  943.     later be executed simply by pressing that key.  If you choose "Store",
  944.             VDE asks "Make Quiet, No-repeat, Both:".  Reply "Q" for a 
  945.          key that executes in Quiet (fast) mode; "N" for a key that 
  946.          runs once, without asking for a repeat count; or "B" for 
  947.          both of these.  Press [Enter] instead for a key that 
  948.          executes just like the "Use macro" option, visibly, asking 
  949.          for a repeat count first.
  950.             VDE asks "Store to key:".  Press the desired function 
  951.          key, from [F1] to [@F12].
  952.             VDE asks "Esc key:".  If desired, press a letter or digit, 
  953.          which can then also be used with [Esc] to invoke this key.
  954.             VDE asks "Label?"  Enter a label, up to 7 characters, for 
  955.          the key label line (see FUNCTION KEY LABELS).
  956.     Don't choose "Q"uiet for a key that will request input from you.
  957.          There is a total of about 2000 bytes available for all 48 keys, and a 
  958.     125 byte limit [in VDE; VINST can accept 253] for any one key.  You can 
  959.     delete a key definition by entering an empty macro string (Esc[, [Enter]) 
  960.     and storing it to the key.  Pressing an undefined key gives an error.
  961.          Keys defined with Esc[ or ] last only during the current editing 
  962.     session (VDE.EXE itself is not modified).  [VINST lets you install 
  963.     definitions permanently; see DEFAULT FUNCTION KEYS.]
  964.  
  965.          EXAMPLES: Keys are useful for storing a frequently repeated phrase; 
  966.     [F3] is much more convenient than "World Wide Widgets Ltd. (N.A.)".  You 
  967.     might also use several for sets of margins, like: ^OL 5 [Enter] ^OR 60 
  968.     [Enter].  A key defined as ^QR ^N AltD ^OF would place the current date at 
  969.     the top right of a letter.  Many VDE users set up a function key to 
  970.     produce a personalized letterhead: for example, the macro
  971.               ^N John Doe ^OC ^N 123 Main St ^OC ^N City, State ^OC
  972.     will insert that three-line address, neatly centered.  You can add print 
  973.     effects (bold, italic) to suit your taste.  For a solid line separating 
  974.     this from the body of the letter, try adding
  975.                           ^N ^PS ^OF ^E ^V ^PS ^V ^X
  976.          Function keys can be used to create powerful new commands, for 
  977.     example: ^D ^A ^KB ^F ^KK will mark the current word as a block.  And, 
  978.     similarly, ^QS ^KB ^X ^KK will mark the current line as a block.
  979.  
  980. FUNCTION KEY LABELS (^OU) - To help you remember the purpose of your function 
  981.     key definitions, the ^OU command toggles the display of a label line at 
  982.     the bottom of the screen.  When a key is defined, its number will appear 
  983.     on the label line, followed by the label (if any) entered when the key was 
  984.     stored.
  985.          The label line is sensitive to keyboard shift status; if you press 
  986.     and hold Shift, Ctrl, or Alt for a moment, the labels will change to show 
  987.     those for the shifted function keys.
  988.          On 80-column screens, 10 labels are visible; in 40-column mode, 5.  
  989.     Labels for the F11, F12 keys only appear on screens of 96 or more columns.
  990.  
  991. KEY DEFINITION FILES (AltU) -  These files save function key definitions and 
  992.     labels, and should be given a file type of ".VDF".  You can load such a 
  993.     file, along with your text file(s) to edit, from the command line (see 
  994.     SYNTAX).
  995.          AltU can be used while editing: it will ask whether you want to 
  996.     "L"oad or "S"ave such a file, then prompt for the name of the file.  If 
  997.     you load a .VDF file, those definitions will replace any previous ones.  
  998.     If you save, the current definitions will be written to the file.  [.VDF 
  999.     files can also be created or installed as defaults in your copy of VDE, 
  1000.     using VINST.]
  1001.  
  1002. MACRO DEFINITION AND USE (Esc[,Esc]) -  To DEFINE a macro, type Esc[.  You 
  1003.     will be asked for the macro definition; you may want to plan it out first 
  1004.     with pen and paper.  Many special PC keys are not accepted at VDE input 
  1005.     prompts, including here; you must use the WordStar equivalent, like ^R 
  1006.     instead of [PgUp].  Those keys can, however, be recorded (see RECORDING 
  1007.     MACROS), and can be entered when defining a macro with VINST (see DEFAULT 
  1008.     FUNCTION KEYS).  Even MenuBar commands (except {User:}) can be used in 
  1009.     macros, with the ^[Esc] command (see MENUBARS).
  1010.          Then you will be asked whether you want to Use the definition you 
  1011.     entered now, or Store it (on storing, see FUNCTION KEYS).
  1012.          Then you need to decide whether you want the macro to repeat (and if 
  1013.     so how many times), and whether you want to watch it happen or not.
  1014.             VDE asks "Make Quiet, No-repeat, Both?"  Reply "Q" for 
  1015.          Quiet (fast) operation, or press [Enter] for visible (slower) 
  1016.          execution.  (The "N" option is intended for storing keys, 
  1017.          but can also be typed here to skip the next question.)
  1018.             VDE asks "Repeat count?"  Type the number of times to 
  1019.          execute (0-254), or just [Enter] for 1; or "*" to repeat 
  1020.          indefinitely.
  1021.         When a macro executes, the "!" flag appears in the header; normally, 
  1022.     you can also see its effects as it executes.  You can cancel it at any 
  1023.     time by pressing [Esc].  If you choose to speed up macro execution by 
  1024.     specifying "Q"uiet mode, only the header will be updated as the macro 
  1025.     runs.  (Don't do this if the macro concludes by requesting user input -- 
  1026.     the necessary prompt would not display!)
  1027.          Macros will stop automatically if an error condition occurs, in which 
  1028.     case the error message will display briefly; or if the cursor attempts to 
  1029.     move past the top or end of the file, in which case no error displays.  
  1030.     (Exception: Esc$ can change error handling.  See MACRO PROGRAMMING.)  
  1031.     Thus some macros will halt on their own when they reach the end of a file; 
  1032.     others will have to be terminated manually, by pressing [Esc].
  1033.          Once defined, a macro can be re-used with the Esc] command, which 
  1034.     again gives you the options to (re)Use or Store the last macro defined or 
  1035.     used.  [To add a function key permanently to VDE.EXE, use VINST: either 
  1036.     enter it again in VINST, or write it to a file and read the file into 
  1037.     VINST -- see DATA FILES.]
  1038.  
  1039.          EXAMPLES:  For clarity, macro examples will be given here as they 
  1040.     function, not as they are typed in; remember that you will need to add ^P 
  1041.     prefixes for certain control keys ([BkSp] (^H), [Enter] (^M), ^J, ^Y, ^P).  
  1042.     Keystrokes are often separated by spaces for clarity; the "_" symbol is 
  1043.     used to represent an actual space character typed.
  1044.             1.  Reformat an entire file: after Esc[, just enter
  1045.                                   ^B
  1046.          Specify Quiet and indefinite repeat as options ("Q,*").
  1047.             2.  View a file by scrolling slowly through it:
  1048.                           Esc; ^Z   or    Esc; ^C
  1049.          This pauses, then scrolls down.  (Again, repeat with "*".)
  1050.             3.  Re-load the current file, eliminating any changes 
  1051.          made since it was last saved:
  1052.                                ^KL ^F [Enter]
  1053.             4.  Macros are quite powerful.  Can you figure out what 
  1054.          this one does, if entered with indefinite repeat "*"?
  1055.                 ^QR ^QF(^J ^G ^KB ^QF)^J ^G ^KK ^QC [Enter] ^KV
  1056.          (It takes all phrases in parentheses out of a file, making 
  1057.          a list of them at the end of the file.)
  1058.  
  1059.          TECHNICAL NOTE: Ordinarily macros are completely self-contained, and 
  1060.     NEVER request input from the keyboard while executing.  There is one 
  1061.     exception: using AltR to run a program from a macro is tricky.  Input 
  1062.     while in the program or shell must be typed by you.  (VDE resumes control 
  1063.     only when the program ends; if the macro continues, its next keystroke 
  1064.     must be the [Esc] to return to editing.)
  1065.  
  1066. MACRO PAUSE/INPUT (Esc;,Esc?,Esc:) - Esc; gives a brief pause before macro 
  1067.     execution continues, so the user can see what's happening on screen.  Use 
  1068.     two or more to get a longer pause.
  1069.          Esc? accepts text or commands from the keyboard during macro 
  1070.     execution.  The header's "!" flag turns into "?" when user input is 
  1071.     expected.  Anything except macro and function key commands may be used.  
  1072.     [Esc] terminates input, returning control to the macro.  ^[Break] aborts.
  1073.          Esc: makes the following command (for example, ^QF) take its input 
  1074.     from the keyboard.  The macro resumes when that command is completed.  
  1075.     Example: Esc:Esc! lets you type in the label to jump to.
  1076.  
  1077. MACRO PROGRAMMING (^F;Esc0..Z,Esc!,Esc=,~,<,>,Esc$,Esc(),Esc+,-,Esc&,&&) - VDE 
  1078.     has several commands that operate only within a macro definition, and give 
  1079.     you conditional control over the execution of a macro, allowing real 
  1080.     programming.
  1081.          ^F, entered as part of an input string, will be replaced by the 
  1082.     current filename when the macro executes.  This can be useful to refer to 
  1083.     the current file when running compilers and file utilities.  Thus, if you 
  1084.     define the macro
  1085.                          AltR compile ^F /g /r1 [Enter] Esc,
  1086.     the ^F embedded in the string will be expanded, so that the DOS command 
  1087.     executed by AltR will actually be something like
  1088.                          compile C:\PGM\MYPROG.C /g /r1.
  1089.  
  1090.          Esc0...Z, when placed in a macro, function simply as local "labels" 
  1091.     0...Z.  They have no effect, but can be "jumped" to by other commands.
  1092.          Esc! followed by 0..9,A..Z is a "jump" instruction, causing macro 
  1093.     execution to resume with the command following that label.  Example: Esc!2 
  1094.     jumps to label 2.  As two special cases, Esc![ jumps to the beginning of 
  1095.     the macro, and Esc!] jumps to the end (exits).
  1096.  
  1097.          Esc= and Esc~ perform tests on the character at the current cursor 
  1098.     position.  There are two ways to use them:
  1099.               (1) Followed by a character, then a label 0..Z (or 
  1100.          "[","]" for start or end), they are conditional jumps: they 
  1101.          jump IF the character does (or for "~", does NOT) match the 
  1102.          one specified.  Example: Esc~^M2 jumps to label 2 if the 
  1103.          current character is NOT a CR.
  1104.              (2) Followed by a character, then ">" or "<", they are 
  1105.         search loops.  They will continue to move the cursor right 
  1106.         (or for "<", left) as long as the character at the cursor 
  1107.         does (or for "~", doesn't) match, or until the beginning or 
  1108.         end of the file.  Example: Esc=_> moves right as long as the 
  1109.         current character is a space (so it stops on a NONspace).
  1110.          Similarly, Esc< and Esc> test the cursor character's ASCII value and 
  1111.     act accordingly: thus Esc<A2 jumps to label 2 if the character is less 
  1112.     than ASCII "A" (41 hex), etc.
  1113.          (Note: place and block markers, since they are not part of the file 
  1114.     text, will fail any test.  If you need to check for their presence, you 
  1115.     can use Esc<^@ [00 hex, entered as ^P@] since no actual character could be 
  1116.     <0 and fail this test.)
  1117.  
  1118.          Normally, a macro halts when an error occurs.  With Esc$ you can 
  1119.     instead specify a label where execution should continue.  Thus, after the 
  1120.     command Esc$E, any command resulting in an error (like "not found") will 
  1121.     cause a jump to label E, ignoring the error.  You can also use the special 
  1122.     characters "[","]" to jump to the beginning or end of the macro, or "@" to 
  1123.     continue without taking action, or "$" to return to halting on any error.
  1124.          If you program an endless loop, you will at some point have to halt 
  1125.     execution of the macro by pressing Esc.
  1126.  
  1127.          Several commands allow the use of a counter variable.  Esc() sets the 
  1128.     value: for example, Esc(0) initializes it to zero.  The Esc+ command 
  1129.     simply increments the value; Esc- (minus) decrements the value, then jumps 
  1130.     if it is zero to a specified label.  (In addition to a number, you may use 
  1131.     "[" or "]" for the start or end, or "@" to avoid jumping entirely.)  
  1132.     Example: Esc-] decrements the counter, jumping to the end (exiting) if it 
  1133.     reaches zero; Esc-@ simply decrements it.
  1134.          Chaining or calling other macros lets you organize them more 
  1135.     efficiently and conserve definition space.  Esc&, followed by a key 
  1136.     identification like "!F1", is used to "chain" to another function key.  
  1137.     Use "!,^,@" for Shift, Ctrl, Alt; and after the "F", a single digit "1"- 
  1138.     "9", or "A"-"C" for 10-12.  ("0" is also accepted for F10.)  Example: 
  1139.     "Esc&^FB" chains to Ctrl-F11.  Esc&& works similarly but "calls" the other 
  1140.     key, returning when it finishes.  Calls may be nested 4 deep.
  1141.          The examples below will give some idea of how these commands can be 
  1142.     used to construct your own new VDE commands.  They will work faster if 
  1143.     you store them as Quiet keys, but in general, don't make macro programs 
  1144.     Quiet until you're sure they work.
  1145.  
  1146.          EXAMPLES: 1. Here is a good macro program (best stored as a Quiet 
  1147.     key) to move the cursor to the start of the current sentence:
  1148.     Esc~.1 ^S Esc1 Esc~.< ^D Esc=_2 Esc=^M2 ^S^S Esc!1 Esc2 ^D Esc=_2 Esc=^M2
  1149.          You could explain this in programmer's pseudo-code as:
  1150.               If not "." goto label1    ;move left if already on period
  1151.               Move left
  1152.      label1:  While not "." move left   ;move left to previous period
  1153.               Move right                ;move right to following character
  1154.               If " "  or ^M goto label2
  1155.               Move left twice           ;skip over a period if it's not
  1156.               Goto label1               ;  followed by a space or return
  1157.      label2:  Move right                ;okay, now move right as long
  1158.               If " " or ^M goto label2  ;  as you see a space or return
  1159.               (all done)
  1160.          2. This macro moves to the start of the current paragraph:
  1161.                           ^QS ^S^S Esc=_[ ^D^D
  1162.          3. If you have some text that you can't reformat because every line 
  1163.     ends in HARD CRs, here is a macro that will "soften up" one paragraph's 
  1164.     worth, leaving just one HARD CR at the end:
  1165.                    ^QS ^X Esc=_] Esc=^M] ^S_^D Esc![
  1166.          4. If you want to produce a "pure ASCII" file for software that can't 
  1167.     accept control codes (other than CR,LF) or IBM graphics, here is a macro 
  1168.     that will filter these out before you save to disk (use filemodes /A,U,N):
  1169.               Esc*f EscB Esc>~X Esc=^MN Esc<_X EscN ^D Esc!B EscX ^G Esc!B
  1170.          5. This macro moves to the center of the current line; note how the 
  1171.     counter variable is used to figure the line length, then move back only 
  1172.     halfway:   ^QS Esc(0) Esc1 Esc+ ^D Esc~^M1 Esc2 Esc-] Esc-] ^S Esc!2
  1173.          6. Many programming languages use nested sets of parentheses, for 
  1174.     example "{}" in C.  This macro, when the cursor is placed on an open 
  1175.     bracket "{", will move ahead to find the closed bracket "}" that matches 
  1176.     it:  Esc~{] Esc(0) Esc1 Esc~{2 Esc+ Esc!3 Esc2 Esc~}3 Esc-] Esc3 ^D Esc!1
  1177.  
  1178. TOGGLE CONTROL (Esc*) -  "Toggle" commands can create difficulties when used 
  1179.     in macro and function keys: ^V, for example, toggles insert mode.  But 
  1180.     when you plan a function key, you don't necessarily know how Insert will 
  1181.     be set when the key is used!  So if you use ^V in the macro, you don't 
  1182.     know whether you just turned it off or on; you might be overstriking or 
  1183.     inserting, and can't tell.
  1184.          The Esc* command provides a solution, by letting a macro specify an 
  1185.     exact state for each toggle.  Esc* must be followed by a LETTER to 
  1186.     identify a toggle, UPPERcase to turn it ON or LOWERcase to turn it OFF.  
  1187.     (Insert and Justify each have a third state, as well.)  For example, Esc*i 
  1188.     will set INSERT OFF, regardless of its previous state.  The toggles are:
  1189.               Autoindent     (^OA)  'a'=off  'A'=on
  1190.               Doublespace    (^OS)  'd'=off  'D'=on
  1191.               auto Format    (^OM)  'f'=off  'F'=on
  1192.               Hyphenation    (^OH)  'h'=off  'H'=on
  1193.               Insert         (^V)   'i'=off  'I'=on  'W'=word
  1194.               Justification  (^OJ)  'j'=off  'J'=on  'R'=remove
  1195.               Proportional   (^OK)  'p'=off  'P'=on
  1196.               Varitab        (^OV)  'v'=off  'V'=on
  1197.               margin release (^OX)  'x'=off  'X'=on
  1198.  
  1199. RECORDING MACROS (Esc") - As an alternative to composing macros and using the 
  1200.     Esc[ command to type them in, you can simply record a macro as you go 
  1201.     about a task.  Press Esc" to activate recording; type away; then press 
  1202.     Esc" again to conclude.  You will then be asked whether to use or store 
  1203.     it, etc (see MACROS).  No confusing ^P prefixes are needed.  While 
  1204.     recording, a quote mark (") will be visible in the upper right (prefix) 
  1205.     area of the header.
  1206.          If you make an error while recording, use Esc" to stop recording, 
  1207.     press [Esc] at the prompt to quit, and start over.
  1208.          NOTES: Because macros don't nest, Function key commands themselves 
  1209.     (and also the {User:} MenuBar) cannot be used while macro recording is in 
  1210.     progress.  Any other keystrokes can be recorded, including all other 
  1211.     MenuBar selections, and even PC keys like [PgUp] which cannot be entered 
  1212.     directly into a macro definition with the Esc[ command.  Be careful when 
  1213.     creating macros by recording [BkSp], [Del], [Home], [End]; the functions 
  1214.     of these keys are VINST options and may differ in someone else's copy of 
  1215.     VDE, so you may wish to use commands like ^S, ^G, ^QS, ^QD instead.
  1216.  
  1217.  
  1218. =====================  8. REVIEWS / ABOUT THE AUTHOR  ========================
  1219.  
  1220.  
  1221.                    A sampling of recent comments about VDE:
  1222.  
  1223.        "VDE is a word-processing program for people who like their 
  1224.     programs lean, mean and simple... executes all the standard 
  1225.     operations necessary for writing articles, books or screenplays... 
  1226.     blazingly fast... Even the loading and storing of files is speedy."     
  1227.               - Paul Ciotti, Los Angeles Times Magazine (18 March 1990)
  1228.  
  1229.        "This may be the finest piece of word processing code ever 
  1230.     written.  I have never been as impressed with anything as I have with 
  1231.     VDE 1.5... writing software in 100 percent assembly language still 
  1232.     pays off in performance and reduced code size.  It's an astonishing 
  1233.     product, believe me.  It's more than the perfect laptop word 
  1234.     processor.  Actually, it's something that corporations should 
  1235.     consider if they want to save tens of thousands of dollars...  I 
  1236.     cannot give a higher recommendation for any product that I have seen 
  1237.     in ten years than I can for VDE 1.5.  Top recommendation."
  1238.               - John Dvorak, PC Magazine (24 April 1990)
  1239.  
  1240.        "What fascinated Dvorak was not just the astonishing functionality 
  1241.     achieved with very little programming code, but also the attitude -- 
  1242.     and implications -- of the author who circulated it freely asking 
  1243.     only for a modest sum for site licenses...  VDE is an amazing word- 
  1244.     processor, offering almost everything except the layout and document 
  1245.     processing features found in far fatter programs... it supports the 
  1246.     old WordStar command set... ergonomically the most efficient I've 
  1247.     ever learned."
  1248.               - Colin Brace, Language Technology/Electric Word (July/Aug 1990)
  1249.  
  1250.        "I've used various versions of WordStar, WordPerfect, and Wang 
  1251.     IWP.  I wouldn't trade my copy of VDE for shrink-wrapped sets of the 
  1252.     latest versions of all of these.  I congratulate you both on the 
  1253.     quality of your program and on your policy in making it available..."
  1254.               - K.N., registered VDE user (August 1991)
  1255.  
  1256.  
  1257.      As of Spring 1992, VDE can be found in "Dvorak's Top 30", a boxed 
  1258. collection of shareware applications published by Interplay Productions, 
  1259. available in retail stores.  It is also included on-disk with the book 
  1260. "Dvorak's Inside Track to DOS and PC Performance" by John Dvorak and Nick 
  1261. Anis, published by Osborne/McGraw-Hill.
  1262.  
  1263.  
  1264.                                ABOUT THE AUTHOR
  1265.  
  1266.      Eric Meyer has also written the shareware ZIP serial file transfer 
  1267. program and a number of free utilities for IBM PC compatibles.  He holds an 
  1268. A.B. in physics and a Ph.D. in history and philosophy of science, and has 
  1269. taught at the Universities of Indiana, Oklahoma, and Colorado.  A longtime 
  1270. advocate of microcomputers, he has done programming in HP-41, Z80 assembler, 
  1271. BASIC, FORTRAN, LISP, C, and APL; lately he has been working mostly in 8086 
  1272. assembler.  In a period of escalating software complexity and prices, he still 
  1273. believes that useful, inexpensive software should remain available to computer 
  1274. users worldwide.
  1275.  
  1276.  
  1277. ================================[end VDE.REF]=================================
  1278.